Skip to main content
TrustRadius
GraalVM

GraalVM

Overview

What is GraalVM?

GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Groovy, Kotlin, Clojure, and LLVM-based languages such as C and C++. GraalVM removes the isolation between programming languages and enables interoperability…

Read more
Recent Reviews

Fantastic Tool

9 out of 10
December 10, 2021
Incentivized
GraalVM is a really powerful technology that is being used in certain departments of my organization. This allows us to pre-compile Java …
Continue reading

Totally Worthy Tool

9 out of 10
October 18, 2021
Incentivized
This is among the most robust and user-friendly applications that are being used in certain departments of our company. This is being used …
Continue reading

Amazing GraalVM!

8 out of 10
April 25, 2021
Incentivized
It's really good. We are using [it] throughout the entire department. It really helps us to connect and use it across multiple languages …
Continue reading
Read all reviews

Awards

Products that are considered exceptional by their customers based on a variety of criteria win TrustRadius awards. Learn more about the types of TrustRadius awards to make the best purchase decision. More about TrustRadius Awards

Return to navigation

Pricing

View all pricing
N/A
Unavailable

What is GraalVM?

GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Groovy, Kotlin, Clojure, and LLVM-based languages such as C and C++. GraalVM removes the isolation between programming languages and enables…

Entry-level set up fee?

  • Setup fee optional
For the latest information on pricing, visithttps://shop.oracle.com/apex/f?p=DSTORE…

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services

Would you like us to let the vendor know that you want pricing?

10 people also want pricing

Alternatives Pricing

What is Java Cloud?

Oracle offers the Java Cloud Service, a PaaS supporting the fast and easy development of Java applications.

Return to navigation

Product Demos

GraalVM Native Image Dashboard tool demo

YouTube

Quick demo of GraalVM compilation of java to native

YouTube
Return to navigation

Product Details

What is GraalVM?

GraalVM is a runtime for microservices that aims to provide significant improvements in application performance and efficiency. The vendor states its ahead-of-time (AOT) compiler allows microservices to startup instantaneously with significantly smaller memory footprint.

It is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Groovy, Kotlin, Clojure, and LLVM-based languages such as C and C++. It removes the isolation between programming languages and enables interoperability in a shared runtime. It can run either standalone or in the context of OpenJDK, Node.js or Oracle Database.

GraalVM Community is available for free for any use.

GraalVM Enterprise provides additional performance, security, and scalability relevant for running applications in production. Users can get a version of GraalVM Enterprise that is free for evaluation and developing new applications via the Oracle Technology Network (OTN), or a commercially licensed version for production use via the Oracle Store.

GraalVM Competitors

GraalVM Technical Details

Deployment TypesOn-premise, Software as a Service (SaaS), Cloud, or Web-Based
Operating SystemsWindows, Linux, Mac
Mobile ApplicationNo

Frequently Asked Questions

GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Groovy, Kotlin, Clojure, and LLVM-based languages such as C and C++. GraalVM removes the isolation between programming languages and enables interoperability in a shared runtime. It can run either standalone or in the context of OpenJDK, Node.js or Oracle Database. Oracle's GraalVM Enterprise is a multilingual virtual machine, which Oracle states delivers even higher efficiency, better isolation and greater agility for enterprises in cloud and hybrid environment.

Azure App Service and Firebase are common alternatives for GraalVM.

Reviewers rate GraalVM Performance highest, with a score of 9.2.

The most common users of GraalVM are from Enterprises (1,001+ employees).
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(99)

Attribute Ratings

Reviews

(1-21 of 21)
Companies can't remove reviews or game the system. Here's why
Ava Jakobs | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is a high-performer runtime that provides significant improvements in application performance and efficiency which is a deal for microservices. [It's] designed for application writing in Java, JavaScript, LLVM-based languages such as C and C++. It helps to do away with isolation between programming languages and enables interoperability in a shared runtime. I love that it can run either standalone or in the context of OpenJDK,Node.js or Oracle Database.
  • Run Java Faster, GraalVM can run in the context of OpenJDK to make Java applications run faster with a new just-in-time compilation technology.
  • Make Application Extensible, GraalVM enables running JavaScript, R, Python, Ruby, LLVM IR, and Web Assembly in the context of Java Data Applications.
  • Create a Native Image, running [an] application inside a Java VM comes with startup and footprint costs.
  • Documentation is not that well detailed up to date.
  • The customer support is not always available.
Its well fit for the environment where applications are written in programming languages supported by GraalVM. It's [a] very powerful and reliable, high-performer Java Virtual Machine that provides the Java Development kit i.e JDK that has the ability to compile the Java apps ahead of time. Maintenance of this tool is simple and it [increases] the efficiency of the product since it requires few resources.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
An amazing tool that is being used in my organization to streamline Java Applications. Some of the departments are utilizing this to address the problems with the Interface of Native Java. This integrates easily with our existing applications and makes them convenient to use. This consumes [fewer] resources which makes our processes more efficient.
  • It is easily maintainable.
  • Requires minimal resources which results in low memory utilization.
  • Supports Java 11 for better performance.
  • Easily configurable.
  • No proper documentation present.
  • Few JDK versions are not supported currently.
  • Customer support is not at par with the industry standards.
This tool is particularly fit for those environments where your applications are written in programming languages supported by GraalVM. It's a wonderful tool [especially] for Java applications and reduces latency. As resource consumption is reduced, it makes everything much more efficient. Not recommended if your application's programming language is not supported by this.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is a powerful tool created by Oracle that was being used by the dev team in our organization. It is a high-performance Java Virtual Machine that also provides the Java Development Kit i.e JDK that has the ability to compile the Java applications ahead of time. Also, it helps in increasing the overall performance of the application since it consumes very fewer resources. The maintenance of the product is quite easy and it is quite flexible since it is written in Java.
  • Ability to compile the applications ahead of its time.
  • Need less resources.
  • Maintenance is easy.
  • Compiler is fast.
  • Efficiency increases.
  • Size of the applications is reduced.
  • Installation is complex.
  • Improper documentation.
  • Support for less number of languages.
GraalVM is a powerful open-source tool that consumes less memory and is a perfect product for the development team who are familiar with the Java language. The maintenance of this product is simple and it increases the efficiency of the product since it requires very few resources. It really has a very fast compiler. GraalVM is however is not suitable when it comes to migrating legacy or older applications to implement GraalVM.
October 18, 2021

Totally Worthy Tool

Score 9 out of 10
Vetted Review
Verified User
Incentivized
This is among the most robust and user-friendly applications that are being used in certain departments of our company. This is being used to streamline the JAVA codes and test them as well. This has seamless integration with our existing applications which makes the usage very efficient. Also, the cost of deployment is comparatively less resulting in cost savings.
  • This supports Java 11 which results in better performance.
  • Most of the programming languages are supported in this like Java, R, Javascript.
  • The memory utilization is fairly very low.
  • Customer service is bit on the back side and improvement is needed.
  • Manual efforts are needed to make certain libraries work.
  • Micro services are not properly supported.
This is very well suited for someone looking for a high-performance environment. This supports a major variety of programming languages which helps to speed up the development time. Also, it helps to troubleshoot and resolve memory issues in addition to reducing the latency to make the process more efficient. This is not suited for the applications working on some programming language that is currently not supported by this.
Score 7 out of 10
Vetted Review
Verified User
Incentivized
Just our department, we are exploring the possibility of using GraalVM to move old java applications on [the] cloud using the advantage of native compilation in order to reduce the workload and relative costs. Right now [applications] are written in spring and are quite [a] memory consuming (we use cloud stream messaging for processing [events] from Kafka).
  • Reduce memory consumption
  • Improve performance
  • Improve startuptime
  • Really difficult to use with reflection
  • Some library not compatible (AKKA)
  • Lack of documentation
GraalVM works really well for [projects] with [a] framework already native compliant. With Spring is quite difficult in certain case to get it [to] work.
Sharique Khan | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is being used in selective teams as an alternate to traditional JVM. A primary usage is to optimize the application compilation using the ahead of time compilation feature. One more is usage of Truffle Language Implementation framework for other JVM-supported languages such as Groovy. All this has allowed us to reduce the startup time of mission-critical applications
  • Reduces the application startup time
  • Allows usage of multiple languages, such as Java and Scala in the same codebase
  • Improved performance in range of C++
  • Notarization of Mac OS 10.15
  • Better support and documentation for debugging and profiling
  • RXVT emulator bug
Specifically on mission-critical applications, as the startup time is an order of magnitude less than traditional Java JVM-based applications, GraalVM is a great choice. Also, for a polyglot team, you need a JVM solution to support engineers skilled and comfortable in multiple programming languages. Moreover, it makes profiling easy at the JVM level to troubleshoot memory issues.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
We are using GraalVM in order to run some on-premises servers and to test part of our solutions. I'd say it's also a perfect tool to be used by Java developers. This tool usage made us reach a new step in terms of quality tests and brought us more options.
  • Multilingual
  • Speed
  • Usability
  • Still missing some languages (DEV)
  • Looks like they still having something being developed
If you want to have a cool VM, don't spend too much memory and mainly being multilanguage go ahead.
Be aware there are some points that can be improved like a couple of languages are not accepted so far.
Like used to, it's easy to use and you can find a lot of information regarding the tool so if you need to do something fast, it's a good choice.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Exploring GraalVM for microservices-based, cloud native applications and serverless applications
  • Polyglot vm
  • Reduced memory footprint
  • Fast startup times
  • Not always optimal native code (JIT sometimes is faster)
  • Microservices support
  • Hard to profile
Well suited for small applications, serverless, CLI tools.
John Hanley | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
We are in an investigative stage with GraalVM and AOT (native-compile) at the department level (software engineering and SecDevOps). We have deployed test applications written in Java and Scala to Windows, Ubuntu, and as Docker images running on container services (Google Cloud Run and Kubernetes).

At this point, I am very impressed. There was a learning curve to understand GraalVM, the polyglot features, and native-compiles. Pluralsight has a good fundamentals overview. The home site for GraalVM has a number of good "getting started" guides.

The areas that we are seeing major impacts in are software size, load time, and cold start time. These are critical benefits as we try to minimize the size of our containers and reduce cold-start time. The end result is more container services can be deployed with the same hardware. This could have a significant financial benefit over running code in a JVM.

We are also investigating the Polyglot features, such as running Node.js and Python in GraalVM. The ability to combine Java and Node.js could present some interesting features to combine the best of our libraries.

In my opinion, this product and technology will significantly improve the performance and footprint of Java-based containers to serverless containers, Kubernetes, and OpenShift.
  • Reducing software cold start time
  • AOT--Native compile, which removes the dependency on the JRE and JVM
  • Reduces application size. Combining native-compile and EXE compression significantly reduces the size of our containers
  • Native compiles. We have problems figuring out how to package jars with all dependencies for compilation. This might be our problem as we progress through the learning curve.
  • More support and testing for Sprint and GraalVM.
  • I recommend providing installer packages instead of downloading zip files.
In my opinion, GraalVM is an amazing technology for deploying containers. There are many benefits of integrating GraalVM into our development and deployment processes:
  1. Reduced application size.
  2. Faster cold start, which improves HTTP request/response-based software.
  3. Native compiles dramatically simplifies building and deploying Java-based containers.
  4. Native compiles often significantly improves application performance.
February 10, 2021

GraalVM is the future

Score 10 out of 10
Vetted Review
Verified User
Incentivized
We used Graal in a technical spike to cut down the footprint of Java stand-alone services that ran on a scheduled basis. It was a great success and brought us savings in memory and CPU footprint and improved startup times. In the long run, this will reduce infrastructure costs and improve platform resilience.
  • Well documented
  • Easy to use
  • Excellent for micro services
  • Some limitations on technology, e.g. reflection, but can be mitigated.
Graal is excellent for micro-service deployments—the savings just add up each time you build a new service! It slots into a build and can build a native binary image nicely, that runs just as easily as a JAR file. The only case I can imagine it not being useful is if you really need to use dynamic class loading at runtime, but these are rare cases in most applications.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
Oracle GraalVM Enterprise Edition is being used in our organization across our project among a team of 45 members. It has majorly addressed the performance of applications by reducing the overhead in terms of startup time, execution time, and memory utilization. It provides additional advantages in writing applications in various programming languages.
  • Application runs faster
  • Memory utilization is very low
  • Cost-effective
  • Not much improvement needed; the product suits our requirements.
GraalVM is very stable and has been very beneficial in terms of Project Delivery due to its advanced Virtual Machine providing JIT (just-in-time) compiler and AOT (ahead-of-time) compiler. So, I will definitely recommend it to others to try at least once in order to scale up the performance of polyglot applications.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is being used as a Java Virtual Machine. It is currently being used in our data department within our IT organization. GraalVM has helped with issues regarding performance and optimization. My coworkers and I are pretty satisfied with the capabilities of GraalVM, as it helps for Java to run in a faster manner.
  • Multiple languages
  • Minimal memory
  • Open source
  • Visibility of roadmap
GraalVM is good for when you have multiple programming languages that you need to support. It also does quite a good job in performance and optimization. It is good at empowering developers. I could caution that not all programming languages are supported so you may need to check the documentation first before adopting it.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
GraalVM being the most efficient Java Virtual Machine is currently being used in the banking department of our esteemed organization. It has reduced the start-up time of our banking applications by maximizing the performance and execution speed to a great extent. This has in turn resulted in client satisfaction and meeting expectations.
  • VM supports multiple programming languages
  • Faster startup time of the application with reduced memory overhead
  • Flexibility of the developers to choose any languages
  • Performance enhancement in polyglot application is not the same in all languages.
I highly recommend GraalVM to my colleagues and friends in the IT industry who want to explore and experience an advanced Virtual Machine that can accommodate applications written in multiple languages with faster execution speed, in terms of minimal utilization of memory, as well as achieving reduced performance issues of the applications.
August 13, 2020

GraalVM Review

Score 9 out of 10
Vetted Review
Verified User
Incentivized
Oracle GraalVM Enterprise Edition has been used by our organization since 2019 across our Oracle department. GraalVM benefits us in writing an application that supports multiple programming languages resulting in accruing high performance and fast compilation. The developers were able to utilize the product to a greater extent and gain maximum advantage out of it.
  • AOT compilation - Java Code To Native Image
  • Minimal allocation of runtime memory
  • Application starts in no time
  • Works exceptionally well for Java applications, but more improvement is needed for non-Java applications.
GraalVM has improved and optimized the startup time of our applications to a great extent (sped up by 32% compared to our previous recorded time). This indeed has a major impact on our deliverable and client satisfaction. Also, we have observed a reduction in runtime memory utilization during the startup of our applications.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is an ecosystem with multiplicative value-add. Oracle GraalVM Enterprise Edition was used in my previous working department at the project level. By enabling interoperability and eliminating the gaps between various programming languages in a shared runtime and high-performance, GraalVM has proved to be very highly effective from the delivery perspective for all our developers.
  • Open source
  • Faster and efficient program execution.
  • Multilingual virtual machine.
  • No JMX, JFR support.
  • No thread dump or heap dump support.
  • Using bigger heaps can badly impact latency.
Due to its low memory footprint, GraalVM is extremely well suited where the amount of application code being executed is large and complex, loads a lot of control files, and has a lot of hot code. As it supports many languages, creating software with multiple languages is a big advantage and provides flexibility for developers.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is an elevated performance runtime that delivers substantial improvements in the performance of the application. Oracle GraalVM Enterprise Edition is being used in our Product Department at the project level. It eliminates the gaps between programming languages and enables interoperability in a shared runtime. It has proved to be highly efficient for our developers from the delivery point of view.
  • Open-sourced
  • Uniting various programming models in a single application
  • Support for polyglot applications
  • Faster execution of Java applications by creating ahead-of-time compiled native images
  • Lower memory footprint
  • Production-ready software
  • Not all languages are supported by GraalVM.
GraalVM has been very well incorporated and implemented in our project. Performance issues in the application have always been the top discussions in our monthly meeting calls, due to introducing and adding new changes, logics, and customizations in the business process as per the client's requirement.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is a production-ready software and is available as Community Edition for an open-source license.
Oracle GraalVM Enterprise Edition is being used in our department, and it has already proven to be highly beneficial and effective as it has been built to cater to enterprise-class application development on a global standard. It has shown significant improvements in application performance and efficiency due to its high-performance runtime.
  • Multilingual Virtual Machine
  • Run Programs Faster Anywhere
  • Compiling applications ahead-of-time (AOT) into native Executable
  • Can run either standalone or in the context of OpenJDK, Node.js or Oracle Database
  • Lower Memory Footprint
  • Compilation is not easy for all JVM code
GraalVM is well suited for JVM-based applications as it provides two independent execution modes:
1. Applications running in a regular just-in-time (JIT) compilation mode adding higher performance gains resulting from quality optimized algorithms.
2. Applications compiled ahead-of-time (AOT) into a native executable. It has the capability to run as a standalone application with instant startup having minimal memory footprint and minimal CPU utilization.
June 28, 2020

GraalVM Review

Score 6 out of 10
Vetted Review
Verified User
Incentivized
We are experimenting to use GraalVM in the context of serverless framework usage. The core issues that it addresses are image size and process start-up time, especially in the cold start scenarios. Another area of interest is in densification of the container images that we run on container clusters to save overall cost.
  • Ahead-of-time compiled native images which start up faster
  • Javascript application run on top of it without need for V8 engine.
  • Java libraries can be accessed from other programming languages.
  • JIT compiler makes a long-running server process run even faster as time passes with optimization at runtime. Lack of this feature makes GraalVM not suited for certain applications
  • All the libraries are not easily available or compiled down to GraalVM binary. Manual Involvement is needed to make some libraries work. Reflection-based libraries specifically do not work.
  • There are runtime surprises in some cases and increases support needs
Microservices development and Serverless application development is an area GraalVM helps well--Especially for smaller binary footprint and faster start-up time. Another appropriate area is running docker containers on an orchestration platform such as K8S or ECS. It's also good for scenarios where alternate JVM languages need to be mixed and used and to run heavy memory usage javascript applications.
June 28, 2020

GraalVM Review

Score 9 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is used in my organization for streamlining JAVA applications and efficient testing of code. It has provided faster startup and no interpreted code as well. It has given a low memory footprint in the use cases. Its native and bright future of performance is also a great advantage. No profiling data required now for JIT optimizations.
  • High performance and it acts as JIT compiler. Optimizations like partial escape help a lot since it is not available in standard JIT compilers.
  • It helps in combining JAVASCRIPT, Java, and R
  • Helps in running native languages on the JVM
  • Helps in extension of JVM-Based application
  • It is efficient for a smaller heap only as it impacts latency
  • Generated native code is not fully efficient
  • No thread dump and heap dump support
It can run spring applications, compiled with OPEN JDK or other JVMs. There's also spring framework support of GraalVM. Although it is at its initial stage, we can be hopeful that spring framework support does work and helps to improve using JAVA. This is a current limitation of GraalVM, but it can be overcome as per official information.
Lokesh Yadav | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is used for delivering services to many clients in our organization. It is very helpful as it has the capability to be embedded in the native applications as well as managed applications. Integrations are seamless with pre-defined formats for Oracle database, OpenJDK, MYSQL, and Node.js which makes the integration process very fast. It is also compatible with the latest Java 11 release, and it is very handy for developers, like me, who are frequently using the latest Java version to take the benefits of the latest features. Its compile time is very fast and has an optimized JIT compiler.
It is used to run the applications written in Kotlin, Python, Groovy, C++, and the interoperability is differentiated in the real-time shared runtime. We can also use the Native Image technology offered by GraalVM to compile the scripted applications well ahead of time before going into the binary code. The deployment and licensing costs approximately 25% less, reducing the overall cost.
  • Performance is better because of latest compatibility with Java 11
  • Standardized Software Development Kit and API design
  • Multi language support to offer best services to international clients
  • Supports all major programming languages
  • Uses low memory
  • Customer support can be improved
  • Needs to support more integrations with micro services
It is best suited for products and services where high performance is needed in real-time with no time lags.
With Oracle changing the JVM distribution license recently, GraalVM serves the purpose of managing the VM platform pretty efficiently. It is well suited for consistent process requirements. Since most of the companies depend heavily on Java for programming, GraalVM provides the best support for building Java applications and can be used for all products.
We can also mix programming languages in the same project, thus it removes the dependency of using a single programming language. This feature is provided by GraalVM and is known as "PolyGlot" apps.
Score 7 out of 10
Vetted Review
Verified User
Incentivized
GraalVM is still in the early stages of product investigation. Engineers are using it for R&D projects and getting familiar with how it can be used at a production level. It will address performance issues for our applications, notably startup times and artifact size.
  • Fast startup
  • Lower memory footprint
  • Polyglot apps
  • The name isn't so great.
  • More broad community use.
Well suited for polyglot apps and those needing high performance. If there is a specific legacy application that requires a specific JDK version, I would not recommend it immediately until further research and testing are performed.
Return to navigation